1. Field of the Invention
The present invention relates to data processing systems and more particularly to data processing systems including display of data and to the storage and retrieval of scalable video data in a disk array-based video server.
2. Prior Art
Recently, the promise of multimedia technologies to have a significant impact on both information providing service and entertainment business has created several new ventures. Given the extremely large data size, the major challenge to handling multimedia data is to support not only very high disk bandwidth for video retrieval but also very high network bandwidth for data transmission. ATM (Asynchronous Transfer Mode) has been proposed as a solution to meet the demand for high network bandwidth. On the other hand, disk-arrays are employed to provide the disk bandwidth required for a video server. For example, an HDTV (high definition television) quality image, will require video data at 2 Mbytes per second (even after compression). It is not desirable to store such video in a single disk for two reasons. First, a 100 minute HDTV movie will require 12 Gbyte of storage. Such a large disk is usually expensive. Second, playing a hot (i.e., frequently requested) movie by a single disk may cause a performance bottleneck. In fact, even for playing movies of ordinary quality, the need to support multiple video streams from a video server also calls for the use of disk-arrays. Consequently, it is highly desirable to use data striping in a disk-array to handle the storage and retrieval of video data, where data striping means dividing the video data into blocks according to their presentation order (i.e., time sequence) and storing these blocks on different disks. It is noted that with such a data striping method, better load balancing can be achieved by staggering the starting times of different video streams. This is called time staggering.
Although data striping improves system performance, a large buffer is required to store the data and loading between disks in the array can become unbalanced.
In order to serve users with different requirements and capabilities from a single copy of a video, it is necessary to develop a scalable video stream. Multi-resolution coding is able to provide scalable video.